# 判断
# ==，判断两侧内容是否相同
# is，判断两侧ID是否相等

# 驻留机制
# a, b = 1000,1000
# a, b = -6*1.5, -6*1.5
# a, b = -1000, -1000
# a, b = 'p百' * 100, 'p百' * 100
# print(id(a), id(b))
# print(a is b)
# dic = {'a':1,'b':1}
# print(dic['a'] is dic['b'])
# c = 1
# lst = [1,1,1,c]
# print(lst[0] is lst[3])
# tup = (1,1,1)
# print(tup[0] is tup[2])
# 代码块：一个文件，一个函数，一个类，一个模块，终端中每一行是一个代码块
# 支持：
# 数字：
#     在同一代码块下，只要内容相同，就采用相同的内存地址(-5以后就不是)
#     数字在做乘法时范围 -5~256 {-无穷~无穷（3.9）}
#     数字在做乘法时不能用浮点数(3.9可以)
# 字符串：
#     在同一代码块下，只要内容相同，就采用相同的内存地址
#     乘法时总长度不能超过20(3.9可以超过20)
#     中文特数符号只能乘0or1（3.9没有限制）
# 布尔值：
#     在同一代码块下，只要内容相同，就采用相同的内存地址

# 小数据池：（是一种规则，如果发现符合规则，就驻留）
# 支持：
# 数字：
#     -5~256
#     数字在做乘法时范围 -5~256
#     数字在做乘法时不能用浮点数
# 字符串：
#     在同一代码块下，只要内容相同，就采用相同的内存地址
#     乘法时总长度不能超过20(3.9可以超过20)
#     中文特数符号只能乘0or1（3.9只能乘0）
# 布尔值：
#     在同一代码块下，只要内容相同，就采用相同的内存地址
# 先执行代码块规则，再执行小数据池的规则 --驻留机制
